1. Technical Field
The present invention relates to data storage in general, and in particular to migrating data between data storage devices. Still more particularly, the present invention relates to a method and apparatus for migrating data between heterogeneous data storage devices within a Storage Area Network.
2. Description of Related Art
In order to provide storage virtualization, Storage Area Network (SAN) switches and SAN appliances typically abstract a server from a storage device by adding a new layer that manipulates input/output (I/O) requests. The new layer requires metadata that describes the placement of data and metadata that maps between virtual and physical addresses. Currently, there is no industry standard for describing such metadata. As a result, each vendor's devices are incompatible with each other from a co-operative perspective.
As more and more vendors are producing virtualization devices, customers are likely to switch vendors from time to time. The change of vendors requires some form of migration procedure to translate the metadata of a first vendor's device into the metadata of a second vendor's device. The migration typically involves a re-creation of the metadata on a separate device by importing all the data and re-creating the volumes previously exported by the first vendor's device. The simplest method is to perform a tape-based backup of the data, and the subsequent restore can then be made to the new volumes exported by the second vendor's device. The entire procedure requires quiescing and flushing of all existing servers and applications using the separate device.
Conventional techniques of migrating data have at least two disadvantages. First, there is a long period of downtime for the data to be backed up and restored. The downtime may be hours or even days, depending on the amount of data being migrated. Second, twice the normal capacity of storage is typically needed. This is because, for maximum reliability, the original storage device should remain available if anything goes wrong during the backup/restore process. Thus, an extra set of storage arrays and controllers is required for the restored data.
Consequently, it would be desirable to provide an improved method and apparatus for migrating data between storage devices.